<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css" media="screen">
<!--
  .classList { font-size: 10pt; font-family: monospace }
  -->
</style>
<title>WSDL4J Change History</title>
</head>

<body bgcolor="#FFFFFF">

<h2 align="center">Change History</h2>

<p>This document lists the WSDL4J changes from version to version. The
most recent version is at the top.</p>

<ul>

  <li><strong>Version 1.6.2</strong>
    <table border="1">
      <thead>
        <tr>
          <th>Classes Affected</th>
          <th>Changes</th>
        </tr>
      </thead>
      <tbody>
        <tr>
          <td class="classList">
            com.ibm.wsdl.xml.WSDLReaderImpl
          </td>
          <td>
            v1.50 - Sourceforge Tracker 1571310. Ensure importDefs Map is always 
            initialized to eliminate potential NPE when the base document URI is
            null.
          </td>
        </tr>
        <tr>
          <td class="classList">
            javax.xml.namespace.QName
          </td>
          <td>
            v1.6 - Sourceforge Tracker 1583854. Add support for 'prefix' to the
            QName class.
          </td>
        </tr>
        <tr>
          <td class="classList">
            com.ibm.wsdl.util.StringUtils
          </td>
          <td>
            v1.8 - Sourceforge Tracker 1591302. 
            Prevent URLStreamReader.getContentType() being called (the URLStreamReader 
            impl may not know what the type is without going through a process of looking!)
          </td>
        </tr>
      </tbody>
    </table>
  </li><br>

  <li><strong>Version 1.6.1</strong>
    <table border="1">
      <thead>
        <tr>
          <th>Classes Affected</th>
          <th>Changes</th>
        </tr>
      </thead>
      <tbody>
        <tr>
          <td class="classList">
            com.ibm.wsdl.util.ObjectRegistry
          </td>
          <td>
            v1.4 - Added a null arg check to the ctor ObjectRegistry(Map).
          </td>
        </tr>
        <tr>
          <td class="classList">
            com.ibm.wsdl.util.xml.DOM2Writer
          </td>
          <td>
            v1.5 - Added back the previous method signatures (i.e. without the 
            namespace Map argument in their signature) from the previous version 
            of this class.
          </td>
        </tr>
        <tr>
          <td class="classList">
            com.ibm.wsdl.xml.WSDLReaderImpl
          </td>
          <td>
            v1.49 - Changed parseBindingOperation method so that if a 
            Binding Operation with unnamed input or output messages does not 
            match against a PortType Operation with corresponding unnamed input 
            or output messages, we search for PortType Op again ignoring unnamed
            messages from the search criteria (i.e. specifying null for those parameters).
          </td>
        </tr>
      </tbody>
    </table>
  </li><br>

  <li><strong>Version 1.6</strong>
    <table border="1">
      <thead>
        <tr>
          <th>Classes Affected</th>
          <th>Changes</th>
        </tr>
      </thead>
      <tbody>
        <tr>
          <td class="classList">
            com.ibm.wsdl.DefinitionImpl,<br>
            javax.wsdl.Definition
          </td>
          <td>
            Tracker 1526754. Added new methods getAllPortTypes, getAllBindings and 
            getAllServices to retrieve all objects, whether they are defined in
            the local Definition or imported (i.e. flatten the WSDL import tree).
          </td>
        </tr>
        <tr>
          <td class="classList">
            javax.wsdl.WSDLException
          </td>
          <td>
            Tracker 1526751. Change toString() behaviour to return the short message
            rather than printing stack trace. Did this by removing the toString() method 
            and inheriting it from java.lang.Exception instead. 
          </td>
        </tr>
        <tr>
          <td class="classList">
            com.ibm.wsdl.extensions.PopulatedExtensionRegistry,<br>
            com.ibm.wsdl.extensions.soap12.SOAP12AddressImpl,<br>
            com.ibm.wsdl.extensions.soap12.SOAP12AddressSerializer,<br>
            com.ibm.wsdl.extensions.soap12.SOAP12BindingImpl,<br>
            com.ibm.wsdl.extensions.soap12.SOAP12BindingSerializer,<br>
            com.ibm.wsdl.extensions.soap12.SOAP12BodyImpl,<br>
            com.ibm.wsdl.extensions.soap12.SOAP12BodySerializer,<br>
            com.ibm.wsdl.extensions.soap12.SOAP12Constants,<br>
            com.ibm.wsdl.extensions.soap12.SOAP12FaultImpl,<br>
            com.ibm.wsdl.extensions.soap12.SOAP12FaultSerializer,<br>
            com.ibm.wsdl.extensions.soap12.SOAP12HeaderFaultImpl,<br>
            com.ibm.wsdl.extensions.soap12.SOAP12HeaderImpl,<br>
            com.ibm.wsdl.extensions.soap12.SOAP12HeaderSerializer,<br>
            com.ibm.wsdl.extensions.soap12.SOAP12OperationImpl,<br>
            com.ibm.wsdl.extensions.soap12.SOAP12OperationSerializer,<br>
            javax.wsdl.extensions.soap12.Address,<br>
            javax.wsdl.extensions.soap12.Binding,<br>
            javax.wsdl.extensions.soap12.Body,<br>
            javax.wsdl.extensions.soap12.Fault,<br>
            javax.wsdl.extensions.soap12.Header,<br>
            javax.wsdl.extensions.soap12.HeaderFault,<br>
            javax.wsdl.extensions.soap12.Operation
          </td>
          <td>
            Tracker 1526750. Added SOAP 1.2 binding extensions. 
          </td>
        </tr>
        <tr>
          <td class="classList">
            com.ibm.wsdl.Constants
          </td>
          <td>
            Tracker 1526749. Added constant for native attributes of Definition.
            <p>
            Tracker 1444755. Added constant ":none" for specifying unnamed input or 
            output messages on operation accessor methods in PortType and Binding.
          </td>
        </tr>
        <tr>
          <td class="classList">
            com.ibm.wsdl.AbstractWSDLElement
          </td>
          <td>
            Tracker 1526749. Initial commit of abstract superclass that refactors
            common methods for extensibility and documentation.
          </td>
        </tr>
        <tr>
          <td class="classList">
            com.ibm.wsdl.BindingFaultImpl,<br>
            com.ibm.wsdl.BindingImpl,<br>
            com.ibm.wsdl.BindingInputImpl,<br>
            com.ibm.wsdl.BindingOperationImpl,<br>
            com.ibm.wsdl.BindingOutputImpl,<br>
            com.ibm.wsdl.DefinitionImpl,<br>
            com.ibm.wsdl.FaultImpl,<br>
            com.ibm.wsdl.ImportImpl,<br>
            com.ibm.wsdl.InputImpl,<br>
            com.ibm.wsdl.MessageImpl,<br>
            com.ibm.wsdl.OperationImpl,<br>
            com.ibm.wsdl.OutputImpl,<br>
            com.ibm.wsdl.PartImpl,<br>
            com.ibm.wsdl.PortImpl,<br>
            com.ibm.wsdl.PortTypeImpl,<br>
            com.ibm.wsdl.ServiceImpl,<br>
            com.ibm.wsdl.TypesImpl,<br>
            com.ibm.wsdl.xml.WSDLReaderImpl,<br>
            com.ibm.wsdl.xml.WSDLWriterImpl 
          </td>
          <td>
            Tracker 1526749. Per WS-I BP 1.1, all WSDL elements now support extension
            elements and extension attributes. Common behaviour for extensibility
            and documentation refactored into new superclass AbstractWSDLElement.
          </td>
        </tr>
        <tr>
          <td class="classList">
            javax.wsdl.WSDLElement
          </td>
          <td>
            Tracker 1526749. Initial commit of abstract super interface that refactors
            common methods for extensibility and documentation.
          </td>
        </tr>
        <tr>
          <td class="classList">
            javax.wsdl.Binding,<br>
            javax.wsdl.BindingFault,<br>
            javax.wsdl.BindingInput,<br>
            javax.wsdl.BindingOperation,<br>
            javax.wsdl.BindingOutput,<br>
            javax.wsdl.Definition,<br>
            javax.wsdl.Fault,<br>
            javax.wsdl.Import,<br>
            javax.wsdl.Input,<br>
            javax.wsdl.Message,<br>
            javax.wsdl.Operation,<br>
            javax.wsdl.Output,<br>
            javax.wsdl.Part,<br>
            javax.wsdl.Port,<br>
            javax.wsdl.PortType,<br>
            javax.wsdl.Service,<br>
            javax.wsdl.Types
          </td>
          <td>
            Tracker 1526749. Per WS-I BP 1.1, all WSDL elements now support extension
            elements and extension attributes. Common behaviour for extensibility
            and documentation refactored into new super interface WSDLElement.
          </td>
        </tr>
        <tr>
          <td class="classList">
            com.ibm.wsdl.extension.schema.SchemaSerializer,<br>
            com.ibm.wsdl.util.ObjectRegistry,<br>
            com.ibm.wsdl.util.xml.DOM2Writer,<br>
            com.ibm.wsdl.util.xml.DOMUtils,<br>
            javax.wsdl.extensions.UnknownExtensionSerializer
          </td>
          <td>
            Improve the printing of namespace declarations.
          </td>
        </tr>
        <tr>
          <td class="classList">
            com.ibm.wsdl.BindingImpl,<br>
            com.ibm.wsdl.BindingOperationImpl,<br>
            com.ibm.wsdl.DefinitionImpl,<br>
            com.ibm.wsdl.MessageImpl,<br>
            com.ibm.wsdl.OperationImpl,<br>
            com.ibm.wsdl.PortTypeImpl,<br>
            com.ibm.wsdl.ServiceImpl,<br>
            com.ibm.wsdl.extensions.mime.MIMEMultipartRelatedImpl,<br>
            com.ibm.wsdl.extensions.mime.MIMEPartImpl,<br>
            com.ibm.wsdl.extensions.soap.SOAPHeaderImpl,<br>
            javax.wsdl.Binding,<br>
            javax.wsdl.BindingOperation,<br>
            javax.wsdl.Definition,<br>
            javax.wsdl.Message,<br>
            javax.wsdl.Operation,<br>
            javax.wsdl.PortType,<br>
            javax.wsdl.Service,<br>
            javax.wsdl.extensions.ElementExtensible,<br>
            javax.wsdl.extensions.mime.MIMEMultipartRelated,<br>
            javax.wsdl.extensions.mime.MIMEPart,<br>
            javax.wsdl.extensions.soap.SOAPHeader
          </td>
          <td>
            Tracker 1526732. Ensure every addXXX method has a matching removeXXX method.
          </td>
        </tr>
        <tr>
          <td class="classList">
            javax.wsdl.xml.WSDLWriter
          </td>
          <td>
            Javadoc improvement - added @return statement.
          </td>
        </tr>
        <tr>
          <td class="classList">
            javax.wsdl.xml.WSDLLocator
          </td>
          <td>
            Tracker 1523891. New method close() to do 'clean up' after use.
          </td>
        </tr>
        <tr>
          <td class="classList">
            com.ibm.wsdl.xml.WSDLReaderImpl,<br>
            javax.wsdl.xml.WSDLReader
          </td>
          <td>
            Tracker 1523867. New method readWSDL(WSDLLocator,Element).
          </td>
        </tr>
        <tr>
          <td class="classList">
            com.ibm.wsdl.BindingImpl,<br>
            com.ibm.wsdl.PortTypeImpl,<br>
            javax.wsdl.Binding,<br>
            javax.wsdl.PortType,<br>
            com.ibm.wsdl.xml.WSDLReaderImpl
          </td>
          <td>
            Tracker 1444755. Change the behaviour of methods get/removeOperation and get/removeBindingOperation
            so that operations with unnamed input or output messages can be searched for by specifying
            the value ":none" for the inputName and outputName method arguments.
          </td>
        </tr>
        <tr>
          <td class="classList">
            javax.wsdl.factory.WSDLFactory
          </td>
          <td>
            Tracker 1439548. When searching for factory impl class name check first for
            the /META-INF/services/javax.wsdl.factory.WSDLFactory property file.
            <p>
            Tracker 1226908. New static method WSDLFactory.newInstance(String,Classloader)
          </td>
        </tr>
      </tbody>
    </table>
  </li><br>

  <li><strong>Version 1.5.3</strong>
    <table border="1">
      <thead>
        <tr>
          <th>Classes Affected</th>
          <th>Changes</th>
        </tr>
      </thead>
      <tbody>
        <tr>
          <td class="classList">
            com.ibm.wsdl.util.StringUtils
          </td>
          <td>
            v1.7 - Modified getURL method to fix SourceForge bug tracker 1465927: 
            readWSDL("http://foo.ibm.com/bar", "/my.wsdl"); tries to read 'file:/my.wsdl' on Unix. 
            It should try to read 'http://foo.ibm.com/my.wsdl'.
          </td>
        </tr>
        <tr>
          <td class="classList">
            com.ibm.wsdl.util.xml.DOMUtils
          </td>
          <td>
            v1.10 - Sourceforge WSDL4J Tracker 1534528. Improve parsing of namespace declarations.
          </td>
        </tr>
        <tr>
          <td class="classList">
            com.ibm.wsdl.xml.WSDLReaderImpl
          </td>
          <td>
            v1.44 - Bug tracker 1533036 - Check if FactoryImplName has changed before clearing cache
            <p>
            v1.45 - Bug tracker 1533111 - Duplicate <wsdl:import> not resolved to a single Definition
            <p>
            v1.46 - Bug tracker 1533106 - Don't catch Throwable, catch only checked exceptions
            <p>
            v1.47 - Bug tracker 1534528 - Improve parsing of namespace declarations.
          </td>
        </tr>
        <tr>
          <td class="classList">
            com.ibm.wsdl.xml.WSDLWriterImpl
          </td>
          <td>
            v1.21 - Bug tracker 1533106 - Don't catch Throwable, catch only checked exceptions
          </td>
        </tr>
        <tr>
          <td class="classList">
            javax.wsdl.OperationType
          </td>
          <td>
            v1.5 - Fixed potential NPE in equals method, reported by  Anli Shundi in bug Tracker 1460305.
          </td>
        </tr>
        <tr>
          <td class="classList">
            javax.wsdl.WSDLException
          </td>
          <td>
            v1.5 - Bug tracker 1526751: Don't printStackTrace in WSDLException.toString()
          </td>
        </tr>
      </tbody>
    </table>
  </li><br>

  <li><strong>Version 1.5.2</strong>
    <table border="1">
      <thead>
        <tr>
          <th>Classes Affected</th>
          <th>Changes</th>
        </tr>
      </thead>
      <tbody>
        <tr>
          <td class="classList">
            com.ibm.wsdl.xml.WSDLReaderImpl
          </td>
          <td>
            v1.41 - Added verbose trace to <code>parseImport</code> to differentiate schemas 
            imported by &lt;wsdl:import&gt; from those imported by &lt;xsd:import&gt;
            <p>
            v1.42 - Refactored the calls to <code>WSDLFactory.newInstance</code> 
            into a new protected method, <code>getWSDLFactory</code>, and cache the factory object 
            in the reader. When factory impl name gets set, clear the cached factory object.
            <p>
            v1.43 - In <code>readWSDL(WSDLLocator)</code>, moved <code>is.setSystemId</code> to after the null 
            test on <code>is</code> to avoid NPE. Thanks to Pete Hendry for pointing this out.
          </td>
        </tr>
        <tr>
          <td class="classList">
            javax.wsdl.OperationType
          </td>
          <td>
            v1.4 - In javax.wsdl.OperationType, implemented a typesafe enumeration 
            and a readResolve method to ensure that at deserialization the original 
            instances of the static variables are recreated. Thanks to David Jencks 
            for his bug report and suggested fix and to Pete Hendry for his suggestions.
          </td>
        </tr>
      </tbody>
    </table>
  </li><br>

  <li><strong>Version 1.5.1</strong>
    <table border="1">
      <thead>
        <tr>
          <th>Classes Affected</th>
          <th>Changes</th>
        </tr>
      </thead>
      <tbody>
        <tr>
          <td class="classList">
            com.ibm.wsdl.xml.WSDLReaderImpl
          </td>
          <td>
            In parseOperation, fixed a logic error that was incorrectly 
            causing duplicate operation errors.
            <p>
            In parseExtensibilityElements, added a check that the 
            extensibility element is not in the WSDL namespace.
            <p>
            Set base URI on <code>InputSource</code> so relative URIs get 
            resolved when parsing the Document. Made this change to 
            <code>readWSDL</code>, <code>parseImport</code> and 
            <code>parseSchema</code> methods. Also, corrected related error 
            messages to use full URI where possible, not just the relative URI.
            <p>
            Fixed NPE when <code>WSDLLocator</code> used in 
            <code>parseImport</code> by ensuring base URI
            is set on <code>InputSource</code> - thanks to Pete Hendry and David Jencks 
            for their suggestions.
            <p>
            In method <code>readWSDL(WSDLLocator)</code>, set the base URI 
            of the <code>InputSource</code> so that subsequent relative URIs will 
            be resolved correctly. Also changed method 
            <code>readWSDL(String,InputSource)</code>, to use this URI
            if it is present.   
          </td>
        </tr>
        <tr>
          <td class="classList">
            com.ibm.wsdl.util.xml.DOMUtils
          </td>
          <td>
            Corrected error checking to ignore namespace declarations when 
            checking for unexpected extensibility attributes.
          </td>
        </tr>
      </tbody>
    </table>
  </li><br>

  <li><strong>Version 1.5 - further changes for the JWSDL 1.1 maintenance release</strong>
    <table border="1">
      <thead>
        <tr>
          <th>Classes Affected</th>
          <th>Changes</th>
        </tr>
      </thead>
      <tbody>
        <tr>
          <td class="classList">
            com.ibm.wsdl.BindingFaultImpl,<br>
            com.ibm.wsdl.BindingImpl,<br>
            com.ibm.wsdl.BindingInputImpl,<br> 
            com.ibm.wsdl.BindingOperationImpl,<br>
            com.ibm.wsdl.BindingOutputImpl,<br> 
            com.ibm.wsdl.PortImpl,<br>
            com.ibm.wsdl.ServiceImpl,<br> 
            com.ibm.wsdl.TypesImpl
          </td>
          <td>
            Removed support for extensibility attributes, to comply with the
            WSDL 1.1 schema at <code>http://schemas.xmlsoap.org/wsdl/</code>.
          </td>
        </tr>
        <tr>
          <td class="classList">
            javax.wsdl.Binding,<br>
            javax.wsdl.BindingFault,<br>
            javax.wsdl.BindingInput,<br>
            javax.wsdl.BindingOperation,<br>
            javax.wsdl.BindingOutput,<br>
            javax.wsdl.Port,<br>
            javax.wsdl.Service,<br>
            javax.wsdl.Types
          </td>
          <td>
            Removed support for extensibility attributes, to comply with the
            WSDL 1.1 schema at <code>http://schemas.xmlsoap.org/wsdl/</code>,
            and have refactored methods for extensibility elements into a new 
            <code>ElementExtensible</code> interface. 
          </td>
        </tr>
        <tr>
          <td class="classList">
            com.ibm.wsdl.MessageImpl,<br>
            com.ibm.wsdl.OperationImpl,<br>
            javax.wsdl.Message,<br>
            javax.wsdl.Operation
          </td>
          <td>
            Removed support for extensibility attributes and added support
            for extensibility elements, to comply with the WSDL 1.1
            schema at <code>http://schemas.xmlsoap.org/wsdl/</code>.
          </td>
        </tr>
        <tr>
          <td class="classList">
            javax.wsdl.Definition,<br>
            javax.wsdl.extensions.ElementExtensible
          </td>
          <td>
            Refactored methods for extensibility elements into a new 
            <code>ElementExtensible</code> interface.
          </td>
        </tr>
        <tr>
          <td class="classList">
            com.ibm.wsdl.DefinitionImpl
          </td>
          <td>
            Removed a noarg constructor with an empty method implementation
            and corrected a Javadoc parameter.
          </td>
        </tr>
        <tr>
          <td class="classList">
            com.ibm.wsdl.Constants
          </td>
          <td>
            Removed constants for XML schema, to a new <code>SchemaConstants</code>
            class.
          </td>
        </tr>
        <tr>
          <td class="classList">
            com.ibm.wsdl.extensions.schema.SchemaConstants,<br>
            com.ibm.wsdl.extensions.schema.SchemaDeserializer,<br>
            com.ibm.wsdl.extensions.schema.SchemaImpl,<br>
            com.ibm.wsdl.extensions.schema.SchemaImportImpl,<br>
            com.ibm.wsdl.extensions.schema.SchemaReferenceImpl,<br>
            com.ibm.wsdl.extensions.schema.SchemaSerializer,<br>
            javax.wsdl.extensions.schema.Schema,<br>
            javax.wsdl.extensions.schema.SchemaImport,<br>
            javax.wsdl.extensions.schema.SchemaReference
          </td>
          <td>
            Created new interfaces and classes for XML schema support.
          </td>
        </tr>
        <tr>
          <td class="classList">
            javax.wsdl.extensions.ExtensionRegistry
          </td>
          <td>
            Modified the <code>createExtension</code> method to ensure the
            element type is initialized.
          </td>
        </tr>
        <tr>
          <td class="classList">
            com.ibm.wsdl.extensions.PopulatedExtensionRegistry
          </td>
          <td>
            Added the registration of XML schema type, serializer and 
            deserializer.
          </td>
        </tr>
        <tr>
          <td class="classList">
            com.ibm.wsdl.xml.WSDLReaderImpl
          </td>
          <td>
            Added support for parsing XML schemas and added error checking 
            to detect unexpected attributes on WSDL elements that do not 
            support extensibility attributes, as defined by the WSDL 1.1 
            schema at <code>http://schemas.xmlsoap.org/wsdl/</code>.

          </td>
        </tr>
        <tr>
          <td class="classList">
            com.ibm.wsdl.xml.WSDLWriterImpl
          </td>
          <td>
            To comply with the WSDL 1.1 schema at 
            <code>http://schemas.xmlsoap.org/wsdl/</code>, some
            WSDL elements should not support extensibility attributes. 
            Have removed the printing of extensibility attributes for 
            these elements. Also, changed the use of XML Encoding to use
            new <code>DOM2Writer</code> utility method for encoding.
          </td>
        </tr>
        <tr>
          <td class="classList">
            com.ibm.wsdl.util.xml.DOM2Writer
          </td>
          <td>
            Added a method to serialize an element (e.g. a schema) as a 
            document by prefixing it with an xml document declaration.
          </td>
        </tr>
        <tr>
          <td class="classList">
            com.ibm.wsdl.util.xml.DOMUtils
          </td>
          <td>
            Added new methods to track unexpected attributes on WSDL 
            elements that do not support extensibility attributes, 
            as defined by the WSDL 1.1 schema at 
            <code>http://schemas.xmlsoap.org/wsdl/</code>.
          </td>
        </tr>
      </tbody>
    </table>
  </li><br>

  <li><strong>Version 1.5</strong>
    <table border="1">
      <thead>
        <tr>
          <th>Classes Affected</th>
          <th>Changes</th>
        </tr>
      </thead>
      <tbody>
        <tr>
          <td class="classList">com.ibm.wsdl.Constants</td>
          <td>
            Added "message" to the list of native attribute names for the
            <code>&lt;wsdl:fault></code> element. Thanks to Dims
            (dims@yahoo.com) for pointing this out.
          </td>
        </tr>
        <tr>
          <td class="classList">
            com.ibm.wsdl.BindingFaultImpl,com.ibm.wsdl.BindingImpl,<br>
            com.ibm.wsdl.BindingInputImpl,com.ibm.wsdl.BindingOperationImpl,<br>
            com.ibm.wsdl.BindingOutputImpl,com.ibm.wsdl.Constants,<br>
            com.ibm.wsdl.DefinitionImpl,com.ibm.wsdl.FaultImpl,<br>
            com.ibm.wsdl.ImportImpl,com.ibm.wsdl.InputImpl,<br>
            com.ibm.wsdl.MessageImpl,com.ibm.wsdl.OperationImpl,<br>
            com.ibm.wsdl.OutputImpl,com.ibm.wsdl.PartImpl,<br>
            com.ibm.wsdl.PortImpl,com.ibm.wsdl.PortTypeImpl,<br>
            com.ibm.wsdl.ServiceImpl,com.ibm.wsdl.TypesImpl,<br>
            com.ibm.wsdl.xml.WSDLReaderImpl,com.ibm.wsdl.xml.WSDLWriterImpl,<br>
            javax.wsdl.AttributeExtensible,javax.wsdl.Binding,<br>
            javax.wsdl.BindingFault,javax.wsdl.BindingInput,<br>
            javax.wsdl.BindingOperation,javax.wsdl.BindingOutput,<br>
            javax.wsdl.Fault,javax.wsdl.Import,javax.wsdl.Input,<br>
            javax.wsdl.Message,javax.wsdl.Operation,javax.wsdl.Output,<br>
            javax.wsdl.Part,javax.wsdl.Port,javax.wsdl.PortType,<br>
            javax.wsdl.Service,javax.wsdl.Types,<br>
            javax.wsdl.extensions.AttributeExtensible,<br>
            javax.wsdl.extensions.ExtensionRegistry
          </td>
          <td>
            Added support for extensibility attributes to all WSDL elements.
            It was previously just supported for <code>&lt;part></code>
            elements.
          </td>
        </tr>
        <tr>
          <td class="classList">com.ibm.wsdl.xml.WSDLReaderImpl</td>
          <td>
            Fixed a bug in the way operations were created. Previously, if a
            <code>&lt;binding></code>was encountered before the
            <code>&lt;portType></code> it referenced, there would be 2
            operations added to the portType for each actual
            <code>&lt;operation></code>. Thanks to Owen Burroughs for this fix.
          </td>
        </tr>
        <tr>
          <td class="classList">build.xml</td>
          <td>
            Added an ant target to generate an html file from the CVS logs.
          </td>
        </tr>
        <tr>
          <td class="classList">com.ibm.wsdl.util.xml.DOMUtils</td>
          <td>
            Made the namespace declaration routine slightly more efficient.
            This namespace declaration issue was raised primarily by Pete
            Hendry.
          </td>
        </tr>
        <tr>
          <td class="classList">
            com.ibm.wsdl.xml.WSDLReaderImpl,com.ibm.wsdl.util.xml.DOMUtils,<br>
            com.ibm.wsdl.extensions.soap.SOAPFaultSerializer,<br>
            com.ibm.wsdl.extensions.soap.SOAPHeaderSerializer
          </td>
          <td>
            Fixed a problem with the way namespace declarations were being
            handled. Previously, namespace declarations that appeared somewhere
            other than the <code>&lt;definition></code> element were not always
            registered on the definition when being read in. This caused the
            writer to complain when trying to serialize the definition back out
            that it couldn't find prefixes for the desired namespaces.
          </td>
        </tr>
        <tr>
          <td class="classList">com.ibm.wsdl.xml.WSDLReaderImpl</td>
          <td>
            Element description in error message was 'input', instead of
            'fault'.
          </td>
        </tr>
        <tr>
          <td class="classList">
            com.ibm.wsdl.DefinitionImpl,com.ibm.wsdl.xml.WSDLReaderImpl,<br>
            com.ibm.wsdl.xml.WSDLWriterImpl,com.ibm.wsdl.util.xml.DOMUtils,<br>
            javax.wsdl.Definition,javax.wsdl.WSDLException
          </td>
          <td>
            Changed handling of unqualified attribute values so that items
            not in any namespace can be referred to. Previously, an exception
            would be thrown saying that the namespace could not be resolved.
            Now, WSDL files can be created with no targetNamespace, and the
            items defined can be referred to from the same document without
            qualifying the references (so long as no default namespace is
            declared).<br>
            Also, removed the association between the default namespace and the
            WSDL namespace URI that was being set in the constructor of
            <code>DefinitionImpl</code>. Thanks to Pete Hendry
            (peter.hendry@capeclear.com) for raising these issues.
          </td>
        </tr>
        <tr>
          <td class="classList">com.ibm.wsdl.util.xml.DOM2Writer</td>
          <td>
            Added the reserved prefix 'xml' to the set of pre-registered
            namespace declarations. Thanks to Michael Sunde
            (msunde@actional.com) for submitting this bug fix.
          </td>
        </tr>
        <tr>
          <td class="classList">javax.wsdl.xml.WSDLLocator</td>
          <td>Committed an update to the javadocs from Owen Burroughs.</td>
        </tr>
        <tr>
          <td class="classList">com.ibm.wsdl.util.StringUtils</td>
          <td>Removed some extraneous methods.</td>
        </tr>
        <tr>
          <td class="classList">
            com.ibm.wsdl.util.StringUtils,com.ibm.wsdl.xml.WSDLReaderImpl,<br>
            javax.wsdl.xml.WSDLReader
          </td>
          <td>
            Now deals with <code>InputStreams</code> instead of
            <code>Readers</code> so that the parser can handle multiple
            character encodings, and so that BOMs are allowed. This fix
            was submitted by Owen Burroughs.
          </td>
        </tr>
        <tr>
          <td class="classList">
            com.ibm.wsdl.Constants,com.ibm.wsdl.xml.WSDLWriterImpl
          </td>
          <td>
            Made some changes so that the writer will look at the encoding
            set on the writer passed into the
            <code>writeWSDL(Definition, Writer)</code> method to determine
            what encoding to specify in the XML declaration. These changes
            were submitted by Owen Burroughs (owenb@uk.ibm.com).
          </td>
        </tr>
      </tbody>
    </table>
  </li><br>
  <li><strong>Version 1.4</strong>
    <table border="1">
      <thead>
        <tr>
          <th>Classes Affected</th>
          <th>Changes</th>
        </tr>
      </thead>
      <tbody>
        <tr>
          <td class="classList">build.xml</td>
          <td>
            Modified the build script to add version information to the
            <code>MANIFEST.MF</code> files generated in the created jars.<br>
            Made naming of generated zip files more consistent.
          </td>
        </tr>
        <tr>
          <td class="classList">com.ibm.wsdl.util.StringUtils</td>
          <td>
            Re-wrote <code>getURL(...)</code> to not open connections when
            invoked.
          </td>
        </tr>
        <tr>
          <td class="classList">com.ibm.wsdl.xml.WSDLWriterImpl</td>
          <td>
            Changed <code>printDefinition(...)</code> so that
            <code>&lt;wsdl:documentation></code> elements are printed prior to
            <code>&lt;wsdl:import></code> elements. This was done to respect
            the order defined in the WSDL schema.<br>
            Changed all but "utility" methods from <code>private static</code>
            to <code>protected</code>.
          </td>
        </tr>
      </tbody>
    </table>
  </li><br>
  <li><strong>Version 1.3</strong>
    <table border="1">
      <caption>Base version. No changes.</caption>
    </table>
  </li>
</ul>

<br>
<hr>
<br>
<div align="center">
<a href="index.html">Introduction</a>&nbsp;&nbsp;|&nbsp;&nbsp;
<a href="install.html">Installation Instructions</a>&nbsp;&nbsp;|&nbsp;&nbsp;
Change History
</div>

</body>
</html>
